home *** CD-ROM | disk | FTP | other *** search
- unit Ctrl;
-
- interface
-
- uses
- Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
- StdCtrls, ColorGrd, ExtCtrls, Srv_TLB, Buttons;
-
- type
- TControlForm = class(TForm)
- BtnExit: TButton;
- Edit: TEdit;
- BtnSend: TButton;
- procedure BtnExitClick(Sender: TObject);
- procedure BtnSendClick(Sender: TObject);
- procedure FormCreate(Sender: TObject);
- private
- FIntf: IQTest;
- end;
-
- var
- ControlForm: TControlForm;
-
- implementation
-
- {$R *.DFM}
-
- uses ComObj, ActiveX;
-
- // Need to import CoGetObject because import in the ActiveX unit is incorrect:
- function MyCoGetObject(pszName: PWideChar; pBindOptions: PBindOpts;
- const iid: TIID; out ppv): HResult; stdcall; external 'ole32.dll' name 'CoGetObject';
-
- procedure TControlForm.BtnExitClick(Sender: TObject);
- begin
- Close;
- end;
-
- procedure TControlForm.BtnSendClick(Sender: TObject);
- begin
- FIntf.SendText(Edit.Text, Now);
- Edit.Clear;
- end;
-
- procedure TControlForm.FormCreate(Sender: TObject);
- const
- SMoniker: PWideChar = 'queue:/new:{64C576F0-C9A7-420A-9EAB-0BE98264BC9D}';
- begin
- // Create object using a moniker that specifies queued creation
- OleCheck(MyCoGetObject(SMoniker, nil, IQTest, FIntf));
- end;
-
- end.
-